/**
 * Copyright &copy; 2012-2016 civet All rights reserved.
 */
package cn.mcsys.myadmin.modules.air.entity;

import cn.mcsys.myadmin.common.persistence.DataEntity;
import org.hibernate.validator.constraints.Length;

import java.util.Date;

/**
 * 车辆管理Entity
 * @author leopold
 * @version 2018-08-13
 */
public class AirCar extends DataEntity<AirCar> {
//	前往乘车点
	public static final int GO_RIDEPOINT = 0;
//	待发车(乘车点中)
	public static final int WAITSTART = 1;
//	已发车(线路中)
	public static final int RIDING = 2;
//	已到达(展馆中)
	public static final int ARRIVE = 3;
//	再次前往乘车点(线路中,带有已到达状态,7:00-12:00)
//	public static final int AGAINSTART = 4;
//	返程中(线路中,13:00-17:00)
//	public static final int RETURNING = 5;
//	已返程(乘车点中)
	public static final int RETURNED = 4;
//	再次前往航展馆(线路中,带有已返程状态,13:00-17:00)
//	public static final int AGAINRETURN = 7;


	private static final long serialVersionUID = 1L;
	private AirRidePoint airRidePoint;		// air_ride_pointid_id
	private AirDriver driver;		// driver_id
	private String carNumber;		// 车牌号
	private String type;		// 车辆类型
	private String belongUnit;		// 所属单位
	private Integer seating;		// 座位数
	private String gps;		// gps
	private Integer vat;		// 速度
	private String direction;		// 方向
	private String lon;		// 经度
	private String lat;		// 维度
	private Integer status;		// 车辆状态
	private String servicePointName;		// 服务点名称
	private Date createDate;		// 创建时间
	private Date modificationDate; //修改时间
	private String note;		// note
	private Integer dispatchType; //是否参与调度
	private Integer outsideType; //是否是外市车辆
	private Integer isOnline;	//是否在线上
	private Integer atWork;		//是否在上班

	public Integer getDispatchType() {
		return dispatchType;
	}

	public void setDispatchType(Integer dispatchType) {
		this.dispatchType = dispatchType;
	}

	public AirCar() {
		super();
	}

	public AirCar(Integer id){
		super(id);
	}

	public AirRidePoint getAirRidePoint() {
		return airRidePoint;
	}

	public void setAirRidePoint(AirRidePoint airRidePoint) {
		this.airRidePoint = airRidePoint;
	}

	public AirDriver getDriver() {
		return driver;
	}

	public void setDriver(AirDriver driver) {
		this.driver = driver;
	}

	@Length(min=0, max=16, message="车牌号长度必须介于 0 和 16 之间")
	public String getCarNumber() {
		return carNumber;
	}

	public void setCarNumber(String carNumber) {
		this.carNumber = carNumber;
	}
	
	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}
	
	@Length(min=0, max=32, message="所属单位长度必须介于 0 和 32 之间")
	public String getBelongUnit() {
		return belongUnit;
	}

	public void setBelongUnit(String belongUnit) {
		this.belongUnit = belongUnit;
	}
	
	public Integer getSeating() {
		return seating;
	}

	public void setSeating(Integer seating) {
		this.seating = seating;
	}
	
	@Length(min=0, max=255, message="gps长度必须介于 0 和 255 之间")
	public String getGps() {
		return gps;
	}

	public void setGps(String gps) {
		this.gps = gps;
	}
	
	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}
	
	@Length(min=0, max=16, message="服务点名称长度必须介于 0 和 16 之间")
	public String getServicePointName() {
		return servicePointName;
	}

	public void setServicePointName(String servicePointName) {
		this.servicePointName = servicePointName;
	}
	
	public Date getCreateDate() {
		return createDate;
	}

	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}
	
	@Length(min=0, max=64, message="note长度必须介于 0 和 64 之间")
	public String getNote() {
		return note;
	}

	public void setNote(String note) {
		this.note = note;
	}

	public Date getModificationDate() {
		return modificationDate;
	}

	public void setModificationDate(Date modificationDate) {
		this.modificationDate = modificationDate;
	}

	public String getLon() {
		return lon;
	}

	public void setLon(String lon) {
		this.lon = lon;
	}

	public String getLat() {
		return lat;
	}

	public void setLat(String lat) {
		this.lat = lat;
	}

	public Integer getVat() {
		return vat;
	}

	public void setVat(Integer vat) {
		this.vat = vat;
	}

	public String getDirection() {
		return direction;
	}

	public void setDirection(String direction) {
		this.direction = direction;
	}

	public Integer getOutsideType() {
		return outsideType;
	}

	public void setOutsideType(Integer outsideType) {
		this.outsideType = outsideType;
	}

	public Integer getIsOnline() {
		return isOnline;
	}

	public void setIsOnline(Integer isOnline) {
		this.isOnline = isOnline;
	}

	public Integer getAtWork() {
		return atWork;
	}

	public void setAtWork(Integer atWork) {
		this.atWork = atWork;
	}
}